package _19_adapter_pattern.v_common;

/**
 * @Description: 场景类
 *
 * 适配器模式最好在详细设计阶段不要考虑它，它不是为了解决还处在开发阶段的问题，
 * 而是解决正在服役的项目问题，没有一个系统分析师会在做详细设计的时候考虑使用适配器
 * 模式，这个模式使用的主要场景是扩展应用中，就像我们上面的那个例子一样，系统扩展
 * 了，不符合原有设计的时候才考虑通过适配器模式减少代码修改带来的风险。
 * 再次提醒一点，项目一定要遵守依赖倒置原则和里氏替换原则，否则即使在适合使用适
 * 配器的场合下，也会带来非常大的改造。
 *
 * @Auther: 2019/6/25 11:55 by zhang.jy
 */
public class Client {
	public static void main(String[] args) {
		//原有的业务逻辑
		Target target = new ConcreteTarget();
		target.request();
		//现在增加了适配器角色后的业务逻辑
		Target target2 = new Adapter();
		target2.request();
	}
}